Conceptos Fundamentales de Seguridad

Dado que cada empresa valora activos específicos, tienden a diferir en el modo en que interpretan y abordan el riesgo. Una manera de interpretar el riesgo es considerar los posibles efectos que los eventos negativos pueden tener en una empresa. Otra forma de presentar esta idea es con el siguiente cálculo:

PROBABILIDAD x IMPACTO = RIESGO

Los dos factores de riesgo comunes son las amenazas y las vulnerabilidades. El riesgo de que un activo sufra daños depende en gran medida de si una amenaza aprovecha las vulnerabilidades.


Categorías de Amenazas

Las amenazas se clasifican en dos categorías: intencionales e involuntarias.


Categorías de Vulnerabilidad

Las vulnerabilidades se pueden clasificar en dos categorías: técnicas y humanas.


CIA TRIAD

Confidentiality

La confidencialidad apunta a proteger la información sensible de intrusos o usuarios no autorizados.

Esto de 3 formas principales

Integrity

La integridad asegura que la información y sistemas estén protegidos contra usuarios no autorizados. Crucial para mantener consistencia, precision y fiabilidad en los sistemas y la información.

Los tres puntos principales

Availability

La disponibilidad asegura que los sistemas sean accesibles y funcionales cuando sea necesario. Mientras mejor sea, más eficiente y fiable serán los sistemas

Los tres puntos principales:

Los planes de seguridad se basan en tres elementos

Assets, Threats y Vulnerabilities

imagen
Ejemplo de un inventario de activos conectados en mi casa

La información tiene tres estados

D.A.D.

El opuesto de CIA.


ISO/IEC 19249

5 principios de arquitectura para principios de seguridad:

  1. Separación de dominios: Cada componente relacionado se agrupa en una sola entidad. Cada entidad se le debe asignar un grupo común de atributos de seguridad.
    • Por ejemplo: los niveles de seguridad de los procesadores x86: El kernel del SO funciona en el ring 0 (más privilegio), pero las aplicaciones corren en el ring 3 (menos privilegio). La separación de modelos se incluye en el modelo Goguen-Meseguer.
  2. Realizar capas: Un sistema estructurado en capas se vuelve más fácil de imponer políticas de seguridad en distintos niveles.
    • Por ejemplo: En el Modelo OSI, cada capa provee de un servicio específico a la capa que le precede.
  3. Encapsulación: Simplificar los métodos a realizar. Por ejemplo en la programación orientada a objetos (OOP), escondemos implementaciones de bajo nivel para prevenir manipulación directa y proveemos de un método específico para ese objetivo.
    • Por ejemplo: Una API es un método de encapsulación.
  4. Redundancia: Asegurar la disponibilidad y la integridad.
    • Por ejemplo: un servidor con dos PSU. Si una falla, el sistema continua funcionando.
  5. Virtualizacion: Compartir el hardware para múltiples sistemas operativos. Esto permite tener entornos de prueba, potenciar el alcance de la seguridad, detonación segura de material desconocido y la observación controlada de programas maliciosos.

ISO/IEC 19249 entrega 5 principios de diseño seguro:

  1. Menor privilegio: Respondiendo la pregunta "¿quién puede acceder qué?". El principio enseña que debes proveer el mínimo de permisos a alguien para que pueda realizar la tarea necesaria.
    • Por ejemplo: Una persona necesita leer un documento para realizar su trabajo. Sólo le damos permisos de lectura y no de escritura.
  2. Minimizar superficie de ataque: Todos los sistemas tienen vulnerabilidades que pueden ser explotadas para comprometer un sistema. Algunas son conocidas y otras no. Hay que minizar el riesgo que poseen.
    • Por ejemplo: Al realizar un hardening de un SO, deshabilitamos todos los servicios que no necesitamos.
  3. Validación de parámetros centralizados: Muchas amenazas ocurren al recibir información ingresada por usuarios. Ingresos inválidos pueden ser usados para explotar vulneraciones, como la inyección SQL.
    • Por ejemplo: Utilizar un sistema ORM para sanitizar las entradas de usuarios en una aplicación web.
  4. Servicios de seguridad general centralizados: Apuntar a centralizar todos los servicios de seguridad.
    • Por ejemplo: Un servidor centralizado para auth.
  5. Prepararse para los errores y manejo de errores: Siempre considerar que los errores y excepciones VAN a ocurrir y hay que estar preparado para ello.
    • Por ejemplo: Un usuario intentando comprar un producto que no está en stock.

Zero Trust vs Trust but Verify

La micro segmentación es un punto clave en el principio de Zero Trust, subdividimos y segmentamos distintas porciones de la red para diferir los permisos y accesos, necesitando una serie de cumplimientos para poder acceder y moverse en la red.

Existe un límite en cuanto podemos aplicar el zero trust sin afectar la Disponibilidad. Pero debemos aplicarla lo más posible e ir de-escalando hacia Trust but Verify.


Amenaza vs Riesgo

#to-do